const Dungeons = function(properties) {
    Object.assign(this, properties || {}, {
        name: undefined,
        level: 1,
        template: [],
        defaultRoute: [],
        specialRoom: {}
    });
    this.acquireTemplate = function() {
        if (!this.template) {
            return []
        }
        return this.template[this.level]
    },
    this.acquireRoute = function() {
        if (!this.specialRoom.processed && this.specialRoom.level == this.level) {
            return this.specialRoom.route
        }
        return this.defaultRoute[this.level]
    }
}